Several technological trends combine to make organizations increasingly dynamic. The Internet makes it possible for people to collaborate over long distances. Virtual networks make it possible for these distributed collaborators to have secure access to a centrally managed set of computing resources, as if they were all working at one location. Social networks provide opportunities for people with common interests or objectives to find each other. Mobile computing and cloud computing enable people to work wherever they happen to be. These trends, taken together, are fundamentally changing the nature of organizations. People who once worked as an employee of a company for several years, now find they can work on a project as a contractor or consultant for a few months, then move on to another job at another company, or even work for several employers at once.
Add to the trends listed above the proliferation of computing devices—desktop computers, laptops, tablets, smartphones—and the result is a complex set of challenges for those who need to manage and secure all those devices. A laptop computer may log in to the organization's network at the office in the morning, over a public network in the afternoon, and from a home network in the evening. Smartphones may move between cellular and wireless networks from hour to hour. A desktop computer that is in a stationary location in the office may be used by different users from one day to the next. Unfortunately, each change of users or locations, or organizational affiliation, may require configuration changes to the computing device being used. For example, data loss prevention policies may change according to device and location. Similarly, changes in the set of application programs used by different users may require configuration changes to a device to resolve conflicts between applications or between applications and the device's operating system. Accordingly, the instant disclosure identifies and addresses a need for additional and improved systems and methods for configuring computing systems.